package com.java.zhuiyun.api.course_unit.service;

import com.java.zhuiyun.api.course_unit.entity.CourseUnit;
import com.java.zhuiyun.api.file_manager.entity.FileManager;
import com.java.zhuiyun.common.response.CommonResult;
import com.java.zhuiyun.util.pageUtil.PageRequest;
import com.java.zhuiyun.util.pageUtil.PageResult;

import java.util.List;

/**
 * @InterfaceName CourseUnitService
 * @Description TODO
 * @Author 杨友朋
 * @Date 2023/8/15 19:53
 **/
public interface CourseUnitService {
    /**
     * @Author 杨友朋
     * @Description TODO 查询章节
     * @Date 2023/8/15 20:56
     * @Return
     * @param
     */
    PageResult selectUnit(Integer courseId, PageRequest pageRequest);
    /**
     * @Author 杨友朋
     * @Description TODO 添加章节
     * @Date 2023/8/15 20:55
     * @Return
     * @param
     */
    CommonResult addUnit(CourseUnit courseUnit);

    /**
    * @Author MJL
    * @Description todo 章节内添加视频
    * @Date 2023/8/17 10:13
    * @Return  * @param null
    */
    Integer addFile(CourseUnit courseUnit);

    /**
    * @Author MJL
    * @Description todo 查询可以添加的视频
    * @Date 2023/8/17 14:29
    * @Return  * @param null
    */
    List<FileManager> selectFile(String fileType);

    /**
    * @Author 杨友朋
    * @Description TODO 修改章节
    * @Date 2023/8/21 16:00
    * @Return
    * @param
    */
    CommonResult updateUnit(CourseUnit courseUnit);

    /**
    * @Author 杨友朋
    * @Description TODO 删除章节
    * @Date 2023/8/21 16:19
    * @Return
    * @param
    */
    CommonResult delUnit(Integer id);

    /**
     * @Author 杨友朋
     * @Description TODO 单查章节
     * @Date 2023/8/24 9:00
     * @Return
     * @param
     */
    CommonResult selectUnitById(Integer id);

    /**
     * @Author 杨友朋
     * @Description TODO 更改状态
     * @Date 2023/8/24 9:23
     * @Return
     * @param
     */
    CommonResult upSwitch(CourseUnit courseUnit);

    /**
    * @Author MJL
    * @Description todo 将章节进行下架操作
    * @Date 2023/9/2 21:15
    * @Return  * @param null
    */
    CommonResult banned(Integer id);

    /**
    * @Author MJL
    * @Description todo 将章节进行上架操作
    * @Date 2023/9/2 21:28
    * @Return  * @param null
    */
    CommonResult enables(Integer id);
}
